//#define _CRT_SECURE_NO_WARNINGS 1
//
//#include<assert.h>
//#include<iostream>
//using namespace std;
//
//class Arr
//{
//public:
//	int& operator[](int i)
//	{
//		assert(i < 10);
//		return arr[i];
//	}
//
//	const int& operator[](int i)const
//	{
//		assert(i < 10);
//		return arr[i];
//	}
//private:
//	int arr[10];
//};
//
//void func(const Arr& a)
//{
//	for (int i = 0; i < 10; i++)
//	{
//		cout << a[i] << " ";
//	}
//	cout << endl;
//}
//
//int main()
//{
//	Arr a;
//	for (int i = 0; i < 10; i++)
//	{
//		a[i] = i;
//	}
//	for (int i = 0; i < 10; i++)
//	{
//		cout << a[i] << " ";
//	}
//	cout << endl;
//
//	func(a);
//	return 0;
//}